// 电话号码验证正则表达式
export const regexPhone = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
// 邮箱验证正则表达式
export const regexEmail = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/
// 密码验证正则表达式
export const regexPassword = /^([0-9a-zA-z])([0-9a-zA-Z._-]{7,15})$/
// 验证码验证正则表达式
export const regexIdentityCode = /^[0-9]{6}$/
// 登录验证码验证正则表达式
export const regexVerificationCode = /^[0-9a-zA-Z]{4}$/
// 登录验证码生成范围
export const IDENTIFY_CODE_ARRAY = '1234567890abcdefjhijklinopqrsduvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
// 验证常量
export const validatorAccount = (rule, value, callback) => {
  return callback(validateAccount(value))
}

export const validatorPassword = (rule, value, callback) => {
  return callback(validatePassword(value))
}

//  验证事件
export function validateAccount (account) {
  if (!account) {
    return '用户名不能为空'
  }
  if (!regexPhone.test(account) && !regexEmail.test(account)) {
    return '您的输入不合法，请输入电话号码或者邮箱'
  }
}

export function validatePassword (password) {
  if (!password) {
    return '密码不能为空'
  }
  if (!regexPassword.test(password)) {
    return '您的输入不合法，请输入8-15字母数字或(._-)组成的密码，且特殊字符不能开头'
  }
}

export function validateRepeatPassword (password, repeatPassword) {
  if (!repeatPassword) {
    return '密码不能为空'
  }
  if (password !== repeatPassword) {
    return '两次输入不一致'
  }
}

export function validateIdentifyCode (identifyCode, verificationCode) {
  if (!regexVerificationCode.test(verificationCode) || identifyCode.toLowerCase() !== verificationCode.toLowerCase()) {
    return '验证码错误'
  }
}
